# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>

pkgname=physfs
pkgver=2.0.3
pkgrel=3
pkgdesc="A library to provide abstract access to various archives"
arch=('i686' 'x86_64')
url="http://icculus.org/physfs/"
license=('ZLIB')
depends=('zlib')
makedepends=('cmake' 'doxygen')
source=(http://icculus.org/physfs/downloads/${pkgname}-${pkgver}.tar.bz2
        physfs-zlib.patch::https://hg.icculus.org/icculus/physfs/raw-diff/090cb9c74b87/archivers/zip.c)
sha1sums=('327308c777009a41bbabb9159b18c4c0ac069537'
          'f9ace6cc30ba0a636c343a43a69b5c6423afaee4')

prepare() {
  cd $pkgname-$pkgver
  # port away from deprecated zlib API
  patch -p1 -i ../physfs-zlib.patch
  # don't use -Weerror, fixes build with GCC 7
  sed -e 's|-Werror||' -i CMakeLists.txt
}

build() {
  mkdir build
  cd build
  cmake ../${pkgname}-${pkgver} -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DPHYSFS_BUILD_TEST=OFF -DPHYSFS_BUILD_WX_TEST=OFF
  make all docs
}

package() {
  cd build
  make DESTDIR="${pkgdir}" install
  install -d "${pkgdir}"/usr/share/{doc/physfs,man/man3}
  install -m644 docs/html/* "${pkgdir}/usr/share/doc/physfs"
  install -m644 docs/man/man3/* "${pkgdir}/usr/share/man/man3"

  for i in author Deinit description extension Free Init major Malloc minor opaque patch Realloc url ; do
    mv "${pkgdir}/usr/share/man/man3/$i.3" "${pkgdir}/usr/share/man/man3/PHYSFS_$i.3"
  done

  install -D -m644 ../${pkgname}-${pkgver}/LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
